Termination Proof Script

Consider the TRS R consisting of the rewrite rules
1:    active(f(0))  → mark(cons(0,f(s(0))))
2:    active(f(s(0)))  → mark(f(p(s(0))))
3:    active(p(s(0)))  → mark(0)
4:    active(f(X))  → f(active(X))
5:    active(cons(X1,X2))  → cons(active(X1),X2)
6:    active(s(X))  → s(active(X))
7:    active(p(X))  → p(active(X))
8:    f(mark(X))  → mark(f(X))
9:    cons(mark(X1),X2)  → mark(cons(X1,X2))
10:    s(mark(X))  → mark(s(X))
11:    p(mark(X))  → mark(p(X))
12:    proper(f(X))  → f(proper(X))
13:    proper(0)  → ok(0)
14:    proper(cons(X1,X2))  → cons(proper(X1),proper(X2))
15:    proper(s(X))  → s(proper(X))
16:    proper(p(X))  → p(proper(X))
17:    f(ok(X))  → ok(f(X))
18:    cons(ok(X1),ok(X2))  → ok(cons(X1,X2))
19:    s(ok(X))  → ok(s(X))
20:    p(ok(X))  → ok(p(X))
21:    top(mark(X))  → top(proper(X))
22:    top(ok(X))  → top(active(X))
There are 34 dependency pairs:
23:    ACTIVE(f(0))  → CONS(0,f(s(0)))
24:    ACTIVE(f(0))  → F(s(0))
25:    ACTIVE(f(0))  → S(0)
26:    ACTIVE(f(s(0)))  → F(p(s(0)))
27:    ACTIVE(f(s(0)))  → P(s(0))
28:    ACTIVE(f(X))  → F(active(X))
29:    ACTIVE(f(X))  → ACTIVE(X)
30:    ACTIVE(cons(X1,X2))  → CONS(active(X1),X2)
31:    ACTIVE(cons(X1,X2))  → ACTIVE(X1)
32:    ACTIVE(s(X))  → S(active(X))
33:    ACTIVE(s(X))  → ACTIVE(X)
34:    ACTIVE(p(X))  → P(active(X))
35:    ACTIVE(p(X))  → ACTIVE(X)
36:    F(mark(X))  → F(X)
37:    CONS(mark(X1),X2)  → CONS(X1,X2)
38:    S(mark(X))  → S(X)
39:    P(mark(X))  → P(X)
40:    PROPER(f(X))  → F(proper(X))
41:    PROPER(f(X))  → PROPER(X)
42:    PROPER(cons(X1,X2))  → CONS(proper(X1),proper(X2))
43:    PROPER(cons(X1,X2))  → PROPER(X1)
44:    PROPER(cons(X1,X2))  → PROPER(X2)
45:    PROPER(s(X))  → S(proper(X))
46:    PROPER(s(X))  → PROPER(X)
47:    PROPER(p(X))  → P(proper(X))
48:    PROPER(p(X))  → PROPER(X)
49:    F(ok(X))  → F(X)
50:    CONS(ok(X1),ok(X2))  → CONS(X1,X2)
51:    S(ok(X))  → S(X)
52:    P(ok(X))  → P(X)
53:    TOP(mark(X))  → TOP(proper(X))
54:    TOP(mark(X))  → PROPER(X)
55:    TOP(ok(X))  → TOP(active(X))
56:    TOP(ok(X))  → ACTIVE(X)
The approximated dependency graph contains 7 SCCs: {37,50}, {36,49}, {39,52}, {38,51}, {41,43,44,46,48}, {29,31,33,35} and {53,55}.
Tyrolean Termination Tool  (6.63 seconds)   ---  May 3, 2006